import { ref } from 'vue'
import { defineStore } from 'pinia'

export const useUserStore = defineStore('user', () => {
  // 用户基本信息
  const userInfo = ref({
    id: null,
    username: '',
    email: '',
    avatar: '',
    isLoggedIn: false
  })

  // 设置用户信息
  function setUserInfo(info) {
    userInfo.value = {
      ...userInfo.value,
      ...info
    }
  }

  // 登录
  function login(userData) {
    userInfo.value = {
      ...userData,
      isLoggedIn: true
    }
  }

  // 登出
  function logout() {
    userInfo.value = {
      id: null,
      username: '',
      email: '',
      avatar: '',
      isLoggedIn: false
    }
  }

  // 更新用户信息
  function updateUserInfo(newInfo) {
    userInfo.value = {
      ...userInfo.value,
      ...newInfo
    }
  }

  return {
    userInfo,
    setUserInfo,
    login,
    logout,
    updateUserInfo
  }
}) 